﻿namespace YFurion.Localization
{
    public interface ILocalizationManager
    {
        string Culture { get; set; }

        string this[string name] { get; }

        /// <summary>
        /// Get entry string by name
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="suffix">后缀</param>
        /// <returns></returns>
        string GetEntryString(string name);

        /// <summary>
        /// Get string by name
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="assemblyName">程序集名称</param>
        /// <returns>language string</returns>
        string GetString(string name, string assemblyName);

        /// <summary>
        /// Get string by name
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="assemblyName">程序集名称</param>
        /// <param name="suffix">后缀</param>
        /// <returns>language string</returns>
        string GetString(string name, string assemblyName, string suffix);
    }
}
